@ok benchmark
<?php
  for ($i = 0; $i < 1000000; $i++) {
    $l += strlen (123456789.123456789);
  }
  var_dump ($l);

  var_dump ((string)0.0);
  var_dump ((string)0.00000000000000000000000000000001);
  var_dump ((string)0.00000000000000000000000000000002);
  var_dump ((string)0.00000000000000000000000000000003);
  var_dump ((string)0.00000000000000000000000000000004);
  var_dump ((string)0.00000000000000000000000000000005);
  var_dump ((string)0.00000000000000000000000000000006);
  var_dump ((string)0.00000000000000000000000000000007);
  var_dump ((string)0.00000000000000000000000000000008);
  var_dump ((string)0.00000000000000000000000000000009);
  var_dump ((string)-0.00000000000000000000000000000001);
  var_dump ((string)-0.00000000000000000000000000000002);
  var_dump ((string)-0.00000000000000000000000000000003);
  var_dump ((string)-0.00000000000000000000000000000004);
  var_dump ((string)-0.00000000000000000000000000000005);
  var_dump ((string)-0.00000000000000000000000000000006);
  var_dump ((string)-0.00000000000000000000000000000007);
  var_dump ((string)-0.00000000000000000000000000000008);
  var_dump ((string)-0.00000000000000000000000000000009);
  var_dump ((string)0.10000000000000000000000000000011);
  var_dump ((string)0.10000000000000000000000000000012);
  var_dump ((string)0.10000000000000000000000000000013);
  var_dump ((string)0.10000000000000000000000000000014);
  var_dump ((string)0.10000000000000000000000000000015);
  var_dump ((string)0.10000000000000000000000000000016);
  var_dump ((string)0.10000000000000000000000000000017);
  var_dump ((string)0.10000000000000000000000000000018);
  var_dump ((string)0.10000000000000000000000000000019);
  var_dump ((string)-0.10000000000000000000000000000011);
  var_dump ((string)-0.10000000000000000000000000000012);
  var_dump ((string)-0.10000000000000000000000000000013);
  var_dump ((string)-0.10000000000000000000000000000014);
  var_dump ((string)-0.10000000000000000000000000000015);
  var_dump ((string)-0.10000000000000000000000000000016);
  var_dump ((string)-0.10000000000000000000000000000017);
  var_dump ((string)-0.10000000000000000000000000000018);
  var_dump ((string)-0.10000000000000000000000000000019);
  var_dump ((string)0.100000000011);
  var_dump ((string)0.100000000012);
  var_dump ((string)0.100000000013);
  var_dump ((string)0.100000000014);
  var_dump ((string)0.100000000015);
  var_dump ((string)0.100000000016);
  var_dump ((string)0.100000000017);
  var_dump ((string)0.100000000018);
  var_dump ((string)0.100000000019);
  var_dump ((string)-0.100000000011);
  var_dump ((string)-0.100000000012);
  var_dump ((string)-0.100000000013);
  var_dump ((string)-0.100000000014);
  var_dump ((string)-0.100000000015);
  var_dump ((string)-0.100000000016);
  var_dump ((string)-0.100000000017);
  var_dump ((string)-0.100000000018);
  var_dump ((string)-0.100000000019);
  var_dump ((string)0.10000000001);
  var_dump ((string)0.10000000002);
  var_dump ((string)0.10000000003);
  var_dump ((string)0.10000000004);
  var_dump ((string)0.10000000005);
  var_dump ((string)0.10000000006);
  var_dump ((string)0.10000000007);
  var_dump ((string)0.10000000008);
  var_dump ((string)0.10000000009);
  var_dump ((string)-0.10000000001);
  var_dump ((string)-0.10000000002);
  var_dump ((string)-0.10000000003);
  var_dump ((string)-0.10000000004);
  var_dump ((string)-0.10000000005);
  var_dump ((string)-0.10000000006);
  var_dump ((string)-0.10000000007);
  var_dump ((string)-0.10000000008);
  var_dump ((string)-0.10000000009);
  var_dump ((string)0.9);
  var_dump ((string)0.99);
  var_dump ((string)0.999);
  var_dump ((string)0.9999);
  var_dump ((string)0.99999);
  var_dump ((string)0.999999);
  var_dump ((string)0.9999999);
  var_dump ((string)0.99999999);
  var_dump ((string)0.999999999);
  var_dump ((string)0.9999999999);
  var_dump ((string)0.99999999999);
  var_dump ((string)0.999999999999);
  var_dump ((string)0.9999999999999);
  var_dump ((string)0.99999999999999);
  var_dump ((string)0.999999999999999);
  var_dump ((string)0.9999999999999999);
  var_dump ((string)0.99999999999999999);
  var_dump ((string)0.999999999999999999);
  var_dump ((string)0.9999999999999999999);
  var_dump ((string)0.99999999999999999999);
  var_dump ((string)0.01);
  var_dump ((string)-0.01);
  var_dump ((string)-0.0111111111111111111111111111);
  var_dump ((string)0.);
  var_dump ((string).0);
  var_dump ((string)1.0e-100);
  var_dump ((string)1.0e100);
  var_dump ((string)12345678901234567890123457.);
  var_dump ((string)1.0e23);
  var_dump ((string)1.0e22);
  var_dump ((string)1.0e-23);
  var_dump ((string)1.0e-22);
  var_dump ((string)12345678901234567890123457e-20);
  var_dump ((string)12345678901234567890123457e+20);
  var_dump ((string)12345678901234567890.);
  var_dump ((string)1234567890123456789.);
  var_dump ((string)123456789012345678.);
  var_dump ((string)12345678901234567.);
  var_dump ((string)1234567890123456.);
  var_dump ((string)123456789012345.);
  var_dump ((string)12345678901234.);
  var_dump ((string)1234567890123.);
  var_dump ((string)123456789012.);
  var_dump ((string)12345678901.);
  var_dump ((string)1234567890.);
  var_dump ((string)123456789.);
  var_dump ((string)12345678.);
  var_dump ((string)1234567.);
  var_dump ((string)123456.);
  var_dump ((string)12345.);
  var_dump ((string)1234.);
  var_dump ((string)123.);
  var_dump ((string)12.);
  var_dump ((string)1.);
  var_dump ((string).0000000000000000000012345678901234567890);
  var_dump ((string).000000000000000000012345678901234567890);
  var_dump ((string).00000000000000000012345678901234567890);
  var_dump ((string).0000000000000000012345678901234567890);
  var_dump ((string).000000000000000012345678901234567890);
  var_dump ((string).00000000000000012345678901234567890);
  var_dump ((string).0000000000000012345678901234567890);
  var_dump ((string).000000000000012345678901234567890);
  var_dump ((string).00000000000012345678901234567890);
  var_dump ((string).0000000000012345678901234567890);
  var_dump ((string).000000000012345678901234567890);
  var_dump ((string).00000000012345678901234567890);
  var_dump ((string).0000000012345678901234567890);
  var_dump ((string).000000012345678901234567890);
  var_dump ((string).00000012345678901234567890);
  var_dump ((string).0000012345678901234567890);
  var_dump ((string).000012345678901234567890);
  var_dump ((string).00012345678901234567890);
  var_dump ((string).0012345678901234567890);
  var_dump ((string).012345678901234567890);
  var_dump ((string).1234567890123456789);
  var_dump ((string).123456789012345678);
  var_dump ((string).12345678901234567);
  var_dump ((string).1234567890123456);
  var_dump ((string).123456789012345);
  var_dump ((string).12345678901234);
  var_dump ((string).1234567890123);
  var_dump ((string).123456789012);
  var_dump ((string).12345678901);
  var_dump ((string).1234567890);
  var_dump ((string).123456789);
  var_dump ((string).12345678);
  var_dump ((string).1234567);
  var_dump ((string).123456);
  var_dump ((string).12345);
  var_dump ((string).1234);
  var_dump ((string).123);
  var_dump ((string).12);
  var_dump ((string).1);
  var_dump ((string)(-0));
//  var_dump ((string)(-.0000000000000000000012345678901234567890 * 1e-999));
  var_dump ((string)(-.0000000000000000000012345678901234567890 * 1e-100));
  var_dump ((string)-.0000000000000000000012345678901234567890);
  var_dump ((string)-.000000000000000000012345678901234567890);
  var_dump ((string)-.00000000000000000012345678901234567890);
  var_dump ((string)-.0000000000000000012345678901234567890);
  var_dump ((string)-.000000000000000012345678901234567890);
  var_dump ((string)-.00000000000000012345678901234567890);
  var_dump ((string)-.0000000000000012345678901234567890);
  var_dump ((string)-.000000000000012345678901234567890);
  var_dump ((string)-.00000000000012345678901234567890);
  var_dump ((string)-.0000000000012345678901234567890);
  var_dump ((string)-.000000000012345678901234567890);
  var_dump ((string)-.00000000012345678901234567890);
  var_dump ((string)-.0000000012345678901234567890);
  var_dump ((string)-.000000012345678901234567890);
  var_dump ((string)-.00000012345678901234567890);
  var_dump ((string)-.0000012345678901234567890);
  var_dump ((string)-.000012345678901234567890);
  var_dump ((string)-.00012345678901234567890);
  var_dump ((string)-.0012345678901234567890);
  var_dump ((string)-.012345678901234567890);
  var_dump ((string)-.1234567890123456789);
  var_dump ((string)-.123456789012345678);
  var_dump ((string)-.12345678901234567);
  var_dump ((string)-.1234567890123456);
  var_dump ((string)-.123456789012345);
  var_dump ((string)-.12345678901234);
  var_dump ((string)-.1234567890123);
  var_dump ((string)-.123456789012);
  var_dump ((string)-.12345678901);
  var_dump ((string)-.1234567890);
  var_dump ((string)-.123456789);
  var_dump ((string)-.12345678);
  var_dump ((string)-.1234567);
  var_dump ((string)-.123456);
  var_dump ((string)-.12345);
  var_dump ((string)-.1234);
  var_dump ((string)-.123);
  var_dump ((string)-.12);
  var_dump ((string)-.1);
  var_dump ((string)1e200 / 1e-200);
  var_dump ((string)-1e200 / 1e-200);
